package com.yckj.activechicken.business.hr.model;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class HrEmployeeExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public HrEmployeeExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andEmpIdIsNull() {
            addCriterion("emp_id is null");
            return (Criteria) this;
        }

        public Criteria andEmpIdIsNotNull() {
            addCriterion("emp_id is not null");
            return (Criteria) this;
        }

        public Criteria andEmpIdEqualTo(Integer value) {
            addCriterion("emp_id =", value, "empId");
            return (Criteria) this;
        }

        public Criteria andEmpIdNotEqualTo(Integer value) {
            addCriterion("emp_id <>", value, "empId");
            return (Criteria) this;
        }

        public Criteria andEmpIdGreaterThan(Integer value) {
            addCriterion("emp_id >", value, "empId");
            return (Criteria) this;
        }

        public Criteria andEmpIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("emp_id >=", value, "empId");
            return (Criteria) this;
        }

        public Criteria andEmpIdLessThan(Integer value) {
            addCriterion("emp_id <", value, "empId");
            return (Criteria) this;
        }

        public Criteria andEmpIdLessThanOrEqualTo(Integer value) {
            addCriterion("emp_id <=", value, "empId");
            return (Criteria) this;
        }

        public Criteria andEmpIdIn(List<Integer> values) {
            addCriterion("emp_id in", values, "empId");
            return (Criteria) this;
        }

        public Criteria andEmpIdNotIn(List<Integer> values) {
            addCriterion("emp_id not in", values, "empId");
            return (Criteria) this;
        }

        public Criteria andEmpIdBetween(Integer value1, Integer value2) {
            addCriterion("emp_id between", value1, value2, "empId");
            return (Criteria) this;
        }

        public Criteria andEmpIdNotBetween(Integer value1, Integer value2) {
            addCriterion("emp_id not between", value1, value2, "empId");
            return (Criteria) this;
        }

        public Criteria andNameIsNull() {
            addCriterion("name is null");
            return (Criteria) this;
        }

        public Criteria andNameIsNotNull() {
            addCriterion("name is not null");
            return (Criteria) this;
        }

        public Criteria andNameEqualTo(String value) {
            addCriterion("name =", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotEqualTo(String value) {
            addCriterion("name <>", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameGreaterThan(String value) {
            addCriterion("name >", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameGreaterThanOrEqualTo(String value) {
            addCriterion("name >=", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLessThan(String value) {
            addCriterion("name <", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLessThanOrEqualTo(String value) {
            addCriterion("name <=", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLike(String value) {
            addCriterion("name like", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotLike(String value) {
            addCriterion("name not like", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameIn(List<String> values) {
            addCriterion("name in", values, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotIn(List<String> values) {
            addCriterion("name not in", values, "name");
            return (Criteria) this;
        }

        public Criteria andNameBetween(String value1, String value2) {
            addCriterion("name between", value1, value2, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotBetween(String value1, String value2) {
            addCriterion("name not between", value1, value2, "name");
            return (Criteria) this;
        }

        public Criteria andSexIsNull() {
            addCriterion("sex is null");
            return (Criteria) this;
        }

        public Criteria andSexIsNotNull() {
            addCriterion("sex is not null");
            return (Criteria) this;
        }

        public Criteria andSexEqualTo(String value) {
            addCriterion("sex =", value, "sex");
            return (Criteria) this;
        }

        public Criteria andSexNotEqualTo(String value) {
            addCriterion("sex <>", value, "sex");
            return (Criteria) this;
        }

        public Criteria andSexGreaterThan(String value) {
            addCriterion("sex >", value, "sex");
            return (Criteria) this;
        }

        public Criteria andSexGreaterThanOrEqualTo(String value) {
            addCriterion("sex >=", value, "sex");
            return (Criteria) this;
        }

        public Criteria andSexLessThan(String value) {
            addCriterion("sex <", value, "sex");
            return (Criteria) this;
        }

        public Criteria andSexLessThanOrEqualTo(String value) {
            addCriterion("sex <=", value, "sex");
            return (Criteria) this;
        }

        public Criteria andSexLike(String value) {
            addCriterion("sex like", value, "sex");
            return (Criteria) this;
        }

        public Criteria andSexNotLike(String value) {
            addCriterion("sex not like", value, "sex");
            return (Criteria) this;
        }

        public Criteria andSexIn(List<String> values) {
            addCriterion("sex in", values, "sex");
            return (Criteria) this;
        }

        public Criteria andSexNotIn(List<String> values) {
            addCriterion("sex not in", values, "sex");
            return (Criteria) this;
        }

        public Criteria andSexBetween(String value1, String value2) {
            addCriterion("sex between", value1, value2, "sex");
            return (Criteria) this;
        }

        public Criteria andSexNotBetween(String value1, String value2) {
            addCriterion("sex not between", value1, value2, "sex");
            return (Criteria) this;
        }

        public Criteria andIdCardIsNull() {
            addCriterion("id_card is null");
            return (Criteria) this;
        }

        public Criteria andIdCardIsNotNull() {
            addCriterion("id_card is not null");
            return (Criteria) this;
        }

        public Criteria andIdCardEqualTo(String value) {
            addCriterion("id_card =", value, "idCard");
            return (Criteria) this;
        }

        public Criteria andIdCardNotEqualTo(String value) {
            addCriterion("id_card <>", value, "idCard");
            return (Criteria) this;
        }

        public Criteria andIdCardGreaterThan(String value) {
            addCriterion("id_card >", value, "idCard");
            return (Criteria) this;
        }

        public Criteria andIdCardGreaterThanOrEqualTo(String value) {
            addCriterion("id_card >=", value, "idCard");
            return (Criteria) this;
        }

        public Criteria andIdCardLessThan(String value) {
            addCriterion("id_card <", value, "idCard");
            return (Criteria) this;
        }

        public Criteria andIdCardLessThanOrEqualTo(String value) {
            addCriterion("id_card <=", value, "idCard");
            return (Criteria) this;
        }

        public Criteria andIdCardLike(String value) {
            addCriterion("id_card like", value, "idCard");
            return (Criteria) this;
        }

        public Criteria andIdCardNotLike(String value) {
            addCriterion("id_card not like", value, "idCard");
            return (Criteria) this;
        }

        public Criteria andIdCardIn(List<String> values) {
            addCriterion("id_card in", values, "idCard");
            return (Criteria) this;
        }

        public Criteria andIdCardNotIn(List<String> values) {
            addCriterion("id_card not in", values, "idCard");
            return (Criteria) this;
        }

        public Criteria andIdCardBetween(String value1, String value2) {
            addCriterion("id_card between", value1, value2, "idCard");
            return (Criteria) this;
        }

        public Criteria andIdCardNotBetween(String value1, String value2) {
            addCriterion("id_card not between", value1, value2, "idCard");
            return (Criteria) this;
        }

        public Criteria andBirthdayIsNull() {
            addCriterion("birthday is null");
            return (Criteria) this;
        }

        public Criteria andBirthdayIsNotNull() {
            addCriterion("birthday is not null");
            return (Criteria) this;
        }

        public Criteria andBirthdayEqualTo(String value) {
            addCriterion("birthday =", value, "birthday");
            return (Criteria) this;
        }

        public Criteria andBirthdayNotEqualTo(String value) {
            addCriterion("birthday <>", value, "birthday");
            return (Criteria) this;
        }

        public Criteria andBirthdayGreaterThan(String value) {
            addCriterion("birthday >", value, "birthday");
            return (Criteria) this;
        }

        public Criteria andBirthdayGreaterThanOrEqualTo(String value) {
            addCriterion("birthday >=", value, "birthday");
            return (Criteria) this;
        }

        public Criteria andBirthdayLessThan(String value) {
            addCriterion("birthday <", value, "birthday");
            return (Criteria) this;
        }

        public Criteria andBirthdayLessThanOrEqualTo(String value) {
            addCriterion("birthday <=", value, "birthday");
            return (Criteria) this;
        }

        public Criteria andBirthdayLike(String value) {
            addCriterion("birthday like", value, "birthday");
            return (Criteria) this;
        }

        public Criteria andBirthdayNotLike(String value) {
            addCriterion("birthday not like", value, "birthday");
            return (Criteria) this;
        }

        public Criteria andBirthdayIn(List<String> values) {
            addCriterion("birthday in", values, "birthday");
            return (Criteria) this;
        }

        public Criteria andBirthdayNotIn(List<String> values) {
            addCriterion("birthday not in", values, "birthday");
            return (Criteria) this;
        }

        public Criteria andBirthdayBetween(String value1, String value2) {
            addCriterion("birthday between", value1, value2, "birthday");
            return (Criteria) this;
        }

        public Criteria andBirthdayNotBetween(String value1, String value2) {
            addCriterion("birthday not between", value1, value2, "birthday");
            return (Criteria) this;
        }

        public Criteria andAddressIsNull() {
            addCriterion("address is null");
            return (Criteria) this;
        }

        public Criteria andAddressIsNotNull() {
            addCriterion("address is not null");
            return (Criteria) this;
        }

        public Criteria andAddressEqualTo(String value) {
            addCriterion("address =", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressNotEqualTo(String value) {
            addCriterion("address <>", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressGreaterThan(String value) {
            addCriterion("address >", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressGreaterThanOrEqualTo(String value) {
            addCriterion("address >=", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressLessThan(String value) {
            addCriterion("address <", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressLessThanOrEqualTo(String value) {
            addCriterion("address <=", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressLike(String value) {
            addCriterion("address like", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressNotLike(String value) {
            addCriterion("address not like", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressIn(List<String> values) {
            addCriterion("address in", values, "address");
            return (Criteria) this;
        }

        public Criteria andAddressNotIn(List<String> values) {
            addCriterion("address not in", values, "address");
            return (Criteria) this;
        }

        public Criteria andAddressBetween(String value1, String value2) {
            addCriterion("address between", value1, value2, "address");
            return (Criteria) this;
        }

        public Criteria andAddressNotBetween(String value1, String value2) {
            addCriterion("address not between", value1, value2, "address");
            return (Criteria) this;
        }

        public Criteria andIsMaritalIsNull() {
            addCriterion("is_marital is null");
            return (Criteria) this;
        }

        public Criteria andIsMaritalIsNotNull() {
            addCriterion("is_marital is not null");
            return (Criteria) this;
        }

        public Criteria andIsMaritalEqualTo(String value) {
            addCriterion("is_marital =", value, "isMarital");
            return (Criteria) this;
        }

        public Criteria andIsMaritalNotEqualTo(String value) {
            addCriterion("is_marital <>", value, "isMarital");
            return (Criteria) this;
        }

        public Criteria andIsMaritalGreaterThan(String value) {
            addCriterion("is_marital >", value, "isMarital");
            return (Criteria) this;
        }

        public Criteria andIsMaritalGreaterThanOrEqualTo(String value) {
            addCriterion("is_marital >=", value, "isMarital");
            return (Criteria) this;
        }

        public Criteria andIsMaritalLessThan(String value) {
            addCriterion("is_marital <", value, "isMarital");
            return (Criteria) this;
        }

        public Criteria andIsMaritalLessThanOrEqualTo(String value) {
            addCriterion("is_marital <=", value, "isMarital");
            return (Criteria) this;
        }

        public Criteria andIsMaritalLike(String value) {
            addCriterion("is_marital like", value, "isMarital");
            return (Criteria) this;
        }

        public Criteria andIsMaritalNotLike(String value) {
            addCriterion("is_marital not like", value, "isMarital");
            return (Criteria) this;
        }

        public Criteria andIsMaritalIn(List<String> values) {
            addCriterion("is_marital in", values, "isMarital");
            return (Criteria) this;
        }

        public Criteria andIsMaritalNotIn(List<String> values) {
            addCriterion("is_marital not in", values, "isMarital");
            return (Criteria) this;
        }

        public Criteria andIsMaritalBetween(String value1, String value2) {
            addCriterion("is_marital between", value1, value2, "isMarital");
            return (Criteria) this;
        }

        public Criteria andIsMaritalNotBetween(String value1, String value2) {
            addCriterion("is_marital not between", value1, value2, "isMarital");
            return (Criteria) this;
        }

        public Criteria andSpouseCompleteNameIsNull() {
            addCriterion("spouse_complete_name is null");
            return (Criteria) this;
        }

        public Criteria andSpouseCompleteNameIsNotNull() {
            addCriterion("spouse_complete_name is not null");
            return (Criteria) this;
        }

        public Criteria andSpouseCompleteNameEqualTo(String value) {
            addCriterion("spouse_complete_name =", value, "spouseCompleteName");
            return (Criteria) this;
        }

        public Criteria andSpouseCompleteNameNotEqualTo(String value) {
            addCriterion("spouse_complete_name <>", value, "spouseCompleteName");
            return (Criteria) this;
        }

        public Criteria andSpouseCompleteNameGreaterThan(String value) {
            addCriterion("spouse_complete_name >", value, "spouseCompleteName");
            return (Criteria) this;
        }

        public Criteria andSpouseCompleteNameGreaterThanOrEqualTo(String value) {
            addCriterion("spouse_complete_name >=", value, "spouseCompleteName");
            return (Criteria) this;
        }

        public Criteria andSpouseCompleteNameLessThan(String value) {
            addCriterion("spouse_complete_name <", value, "spouseCompleteName");
            return (Criteria) this;
        }

        public Criteria andSpouseCompleteNameLessThanOrEqualTo(String value) {
            addCriterion("spouse_complete_name <=", value, "spouseCompleteName");
            return (Criteria) this;
        }

        public Criteria andSpouseCompleteNameLike(String value) {
            addCriterion("spouse_complete_name like", value, "spouseCompleteName");
            return (Criteria) this;
        }

        public Criteria andSpouseCompleteNameNotLike(String value) {
            addCriterion("spouse_complete_name not like", value, "spouseCompleteName");
            return (Criteria) this;
        }

        public Criteria andSpouseCompleteNameIn(List<String> values) {
            addCriterion("spouse_complete_name in", values, "spouseCompleteName");
            return (Criteria) this;
        }

        public Criteria andSpouseCompleteNameNotIn(List<String> values) {
            addCriterion("spouse_complete_name not in", values, "spouseCompleteName");
            return (Criteria) this;
        }

        public Criteria andSpouseCompleteNameBetween(String value1, String value2) {
            addCriterion("spouse_complete_name between", value1, value2, "spouseCompleteName");
            return (Criteria) this;
        }

        public Criteria andSpouseCompleteNameNotBetween(String value1, String value2) {
            addCriterion("spouse_complete_name not between", value1, value2, "spouseCompleteName");
            return (Criteria) this;
        }

        public Criteria andSpouseBirthdayIsNull() {
            addCriterion("spouse_birthday is null");
            return (Criteria) this;
        }

        public Criteria andSpouseBirthdayIsNotNull() {
            addCriterion("spouse_birthday is not null");
            return (Criteria) this;
        }

        public Criteria andSpouseBirthdayEqualTo(String value) {
            addCriterion("spouse_birthday =", value, "spouseBirthday");
            return (Criteria) this;
        }

        public Criteria andSpouseBirthdayNotEqualTo(String value) {
            addCriterion("spouse_birthday <>", value, "spouseBirthday");
            return (Criteria) this;
        }

        public Criteria andSpouseBirthdayGreaterThan(String value) {
            addCriterion("spouse_birthday >", value, "spouseBirthday");
            return (Criteria) this;
        }

        public Criteria andSpouseBirthdayGreaterThanOrEqualTo(String value) {
            addCriterion("spouse_birthday >=", value, "spouseBirthday");
            return (Criteria) this;
        }

        public Criteria andSpouseBirthdayLessThan(String value) {
            addCriterion("spouse_birthday <", value, "spouseBirthday");
            return (Criteria) this;
        }

        public Criteria andSpouseBirthdayLessThanOrEqualTo(String value) {
            addCriterion("spouse_birthday <=", value, "spouseBirthday");
            return (Criteria) this;
        }

        public Criteria andSpouseBirthdayLike(String value) {
            addCriterion("spouse_birthday like", value, "spouseBirthday");
            return (Criteria) this;
        }

        public Criteria andSpouseBirthdayNotLike(String value) {
            addCriterion("spouse_birthday not like", value, "spouseBirthday");
            return (Criteria) this;
        }

        public Criteria andSpouseBirthdayIn(List<String> values) {
            addCriterion("spouse_birthday in", values, "spouseBirthday");
            return (Criteria) this;
        }

        public Criteria andSpouseBirthdayNotIn(List<String> values) {
            addCriterion("spouse_birthday not in", values, "spouseBirthday");
            return (Criteria) this;
        }

        public Criteria andSpouseBirthdayBetween(String value1, String value2) {
            addCriterion("spouse_birthday between", value1, value2, "spouseBirthday");
            return (Criteria) this;
        }

        public Criteria andSpouseBirthdayNotBetween(String value1, String value2) {
            addCriterion("spouse_birthday not between", value1, value2, "spouseBirthday");
            return (Criteria) this;
        }

        public Criteria andChildrenNumIsNull() {
            addCriterion("children_num is null");
            return (Criteria) this;
        }

        public Criteria andChildrenNumIsNotNull() {
            addCriterion("children_num is not null");
            return (Criteria) this;
        }

        public Criteria andChildrenNumEqualTo(Integer value) {
            addCriterion("children_num =", value, "childrenNum");
            return (Criteria) this;
        }

        public Criteria andChildrenNumNotEqualTo(Integer value) {
            addCriterion("children_num <>", value, "childrenNum");
            return (Criteria) this;
        }

        public Criteria andChildrenNumGreaterThan(Integer value) {
            addCriterion("children_num >", value, "childrenNum");
            return (Criteria) this;
        }

        public Criteria andChildrenNumGreaterThanOrEqualTo(Integer value) {
            addCriterion("children_num >=", value, "childrenNum");
            return (Criteria) this;
        }

        public Criteria andChildrenNumLessThan(Integer value) {
            addCriterion("children_num <", value, "childrenNum");
            return (Criteria) this;
        }

        public Criteria andChildrenNumLessThanOrEqualTo(Integer value) {
            addCriterion("children_num <=", value, "childrenNum");
            return (Criteria) this;
        }

        public Criteria andChildrenNumIn(List<Integer> values) {
            addCriterion("children_num in", values, "childrenNum");
            return (Criteria) this;
        }

        public Criteria andChildrenNumNotIn(List<Integer> values) {
            addCriterion("children_num not in", values, "childrenNum");
            return (Criteria) this;
        }

        public Criteria andChildrenNumBetween(Integer value1, Integer value2) {
            addCriterion("children_num between", value1, value2, "childrenNum");
            return (Criteria) this;
        }

        public Criteria andChildrenNumNotBetween(Integer value1, Integer value2) {
            addCriterion("children_num not between", value1, value2, "childrenNum");
            return (Criteria) this;
        }

        public Criteria andMobilePhoneIsNull() {
            addCriterion("mobile_phone is null");
            return (Criteria) this;
        }

        public Criteria andMobilePhoneIsNotNull() {
            addCriterion("mobile_phone is not null");
            return (Criteria) this;
        }

        public Criteria andMobilePhoneEqualTo(String value) {
            addCriterion("mobile_phone =", value, "mobilePhone");
            return (Criteria) this;
        }

        public Criteria andMobilePhoneNotEqualTo(String value) {
            addCriterion("mobile_phone <>", value, "mobilePhone");
            return (Criteria) this;
        }

        public Criteria andMobilePhoneGreaterThan(String value) {
            addCriterion("mobile_phone >", value, "mobilePhone");
            return (Criteria) this;
        }

        public Criteria andMobilePhoneGreaterThanOrEqualTo(String value) {
            addCriterion("mobile_phone >=", value, "mobilePhone");
            return (Criteria) this;
        }

        public Criteria andMobilePhoneLessThan(String value) {
            addCriterion("mobile_phone <", value, "mobilePhone");
            return (Criteria) this;
        }

        public Criteria andMobilePhoneLessThanOrEqualTo(String value) {
            addCriterion("mobile_phone <=", value, "mobilePhone");
            return (Criteria) this;
        }

        public Criteria andMobilePhoneLike(String value) {
            addCriterion("mobile_phone like", value, "mobilePhone");
            return (Criteria) this;
        }

        public Criteria andMobilePhoneNotLike(String value) {
            addCriterion("mobile_phone not like", value, "mobilePhone");
            return (Criteria) this;
        }

        public Criteria andMobilePhoneIn(List<String> values) {
            addCriterion("mobile_phone in", values, "mobilePhone");
            return (Criteria) this;
        }

        public Criteria andMobilePhoneNotIn(List<String> values) {
            addCriterion("mobile_phone not in", values, "mobilePhone");
            return (Criteria) this;
        }

        public Criteria andMobilePhoneBetween(String value1, String value2) {
            addCriterion("mobile_phone between", value1, value2, "mobilePhone");
            return (Criteria) this;
        }

        public Criteria andMobilePhoneNotBetween(String value1, String value2) {
            addCriterion("mobile_phone not between", value1, value2, "mobilePhone");
            return (Criteria) this;
        }

        public Criteria andEmailIsNull() {
            addCriterion("email is null");
            return (Criteria) this;
        }

        public Criteria andEmailIsNotNull() {
            addCriterion("email is not null");
            return (Criteria) this;
        }

        public Criteria andEmailEqualTo(String value) {
            addCriterion("email =", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailNotEqualTo(String value) {
            addCriterion("email <>", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailGreaterThan(String value) {
            addCriterion("email >", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailGreaterThanOrEqualTo(String value) {
            addCriterion("email >=", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailLessThan(String value) {
            addCriterion("email <", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailLessThanOrEqualTo(String value) {
            addCriterion("email <=", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailLike(String value) {
            addCriterion("email like", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailNotLike(String value) {
            addCriterion("email not like", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailIn(List<String> values) {
            addCriterion("email in", values, "email");
            return (Criteria) this;
        }

        public Criteria andEmailNotIn(List<String> values) {
            addCriterion("email not in", values, "email");
            return (Criteria) this;
        }

        public Criteria andEmailBetween(String value1, String value2) {
            addCriterion("email between", value1, value2, "email");
            return (Criteria) this;
        }

        public Criteria andEmailNotBetween(String value1, String value2) {
            addCriterion("email not between", value1, value2, "email");
            return (Criteria) this;
        }

        public Criteria andWorkPhoneIsNull() {
            addCriterion("work_phone is null");
            return (Criteria) this;
        }

        public Criteria andWorkPhoneIsNotNull() {
            addCriterion("work_phone is not null");
            return (Criteria) this;
        }

        public Criteria andWorkPhoneEqualTo(String value) {
            addCriterion("work_phone =", value, "workPhone");
            return (Criteria) this;
        }

        public Criteria andWorkPhoneNotEqualTo(String value) {
            addCriterion("work_phone <>", value, "workPhone");
            return (Criteria) this;
        }

        public Criteria andWorkPhoneGreaterThan(String value) {
            addCriterion("work_phone >", value, "workPhone");
            return (Criteria) this;
        }

        public Criteria andWorkPhoneGreaterThanOrEqualTo(String value) {
            addCriterion("work_phone >=", value, "workPhone");
            return (Criteria) this;
        }

        public Criteria andWorkPhoneLessThan(String value) {
            addCriterion("work_phone <", value, "workPhone");
            return (Criteria) this;
        }

        public Criteria andWorkPhoneLessThanOrEqualTo(String value) {
            addCriterion("work_phone <=", value, "workPhone");
            return (Criteria) this;
        }

        public Criteria andWorkPhoneLike(String value) {
            addCriterion("work_phone like", value, "workPhone");
            return (Criteria) this;
        }

        public Criteria andWorkPhoneNotLike(String value) {
            addCriterion("work_phone not like", value, "workPhone");
            return (Criteria) this;
        }

        public Criteria andWorkPhoneIn(List<String> values) {
            addCriterion("work_phone in", values, "workPhone");
            return (Criteria) this;
        }

        public Criteria andWorkPhoneNotIn(List<String> values) {
            addCriterion("work_phone not in", values, "workPhone");
            return (Criteria) this;
        }

        public Criteria andWorkPhoneBetween(String value1, String value2) {
            addCriterion("work_phone between", value1, value2, "workPhone");
            return (Criteria) this;
        }

        public Criteria andWorkPhoneNotBetween(String value1, String value2) {
            addCriterion("work_phone not between", value1, value2, "workPhone");
            return (Criteria) this;
        }

        public Criteria andWorkEmailIsNull() {
            addCriterion("work_email is null");
            return (Criteria) this;
        }

        public Criteria andWorkEmailIsNotNull() {
            addCriterion("work_email is not null");
            return (Criteria) this;
        }

        public Criteria andWorkEmailEqualTo(String value) {
            addCriterion("work_email =", value, "workEmail");
            return (Criteria) this;
        }

        public Criteria andWorkEmailNotEqualTo(String value) {
            addCriterion("work_email <>", value, "workEmail");
            return (Criteria) this;
        }

        public Criteria andWorkEmailGreaterThan(String value) {
            addCriterion("work_email >", value, "workEmail");
            return (Criteria) this;
        }

        public Criteria andWorkEmailGreaterThanOrEqualTo(String value) {
            addCriterion("work_email >=", value, "workEmail");
            return (Criteria) this;
        }

        public Criteria andWorkEmailLessThan(String value) {
            addCriterion("work_email <", value, "workEmail");
            return (Criteria) this;
        }

        public Criteria andWorkEmailLessThanOrEqualTo(String value) {
            addCriterion("work_email <=", value, "workEmail");
            return (Criteria) this;
        }

        public Criteria andWorkEmailLike(String value) {
            addCriterion("work_email like", value, "workEmail");
            return (Criteria) this;
        }

        public Criteria andWorkEmailNotLike(String value) {
            addCriterion("work_email not like", value, "workEmail");
            return (Criteria) this;
        }

        public Criteria andWorkEmailIn(List<String> values) {
            addCriterion("work_email in", values, "workEmail");
            return (Criteria) this;
        }

        public Criteria andWorkEmailNotIn(List<String> values) {
            addCriterion("work_email not in", values, "workEmail");
            return (Criteria) this;
        }

        public Criteria andWorkEmailBetween(String value1, String value2) {
            addCriterion("work_email between", value1, value2, "workEmail");
            return (Criteria) this;
        }

        public Criteria andWorkEmailNotBetween(String value1, String value2) {
            addCriterion("work_email not between", value1, value2, "workEmail");
            return (Criteria) this;
        }

        public Criteria andWorkLocationIsNull() {
            addCriterion("work_location is null");
            return (Criteria) this;
        }

        public Criteria andWorkLocationIsNotNull() {
            addCriterion("work_location is not null");
            return (Criteria) this;
        }

        public Criteria andWorkLocationEqualTo(String value) {
            addCriterion("work_location =", value, "workLocation");
            return (Criteria) this;
        }

        public Criteria andWorkLocationNotEqualTo(String value) {
            addCriterion("work_location <>", value, "workLocation");
            return (Criteria) this;
        }

        public Criteria andWorkLocationGreaterThan(String value) {
            addCriterion("work_location >", value, "workLocation");
            return (Criteria) this;
        }

        public Criteria andWorkLocationGreaterThanOrEqualTo(String value) {
            addCriterion("work_location >=", value, "workLocation");
            return (Criteria) this;
        }

        public Criteria andWorkLocationLessThan(String value) {
            addCriterion("work_location <", value, "workLocation");
            return (Criteria) this;
        }

        public Criteria andWorkLocationLessThanOrEqualTo(String value) {
            addCriterion("work_location <=", value, "workLocation");
            return (Criteria) this;
        }

        public Criteria andWorkLocationLike(String value) {
            addCriterion("work_location like", value, "workLocation");
            return (Criteria) this;
        }

        public Criteria andWorkLocationNotLike(String value) {
            addCriterion("work_location not like", value, "workLocation");
            return (Criteria) this;
        }

        public Criteria andWorkLocationIn(List<String> values) {
            addCriterion("work_location in", values, "workLocation");
            return (Criteria) this;
        }

        public Criteria andWorkLocationNotIn(List<String> values) {
            addCriterion("work_location not in", values, "workLocation");
            return (Criteria) this;
        }

        public Criteria andWorkLocationBetween(String value1, String value2) {
            addCriterion("work_location between", value1, value2, "workLocation");
            return (Criteria) this;
        }

        public Criteria andWorkLocationNotBetween(String value1, String value2) {
            addCriterion("work_location not between", value1, value2, "workLocation");
            return (Criteria) this;
        }

        public Criteria andContractWarningIsNull() {
            addCriterion("contract_warning is null");
            return (Criteria) this;
        }

        public Criteria andContractWarningIsNotNull() {
            addCriterion("contract_warning is not null");
            return (Criteria) this;
        }

        public Criteria andContractWarningEqualTo(String value) {
            addCriterion("contract_warning =", value, "contractWarning");
            return (Criteria) this;
        }

        public Criteria andContractWarningNotEqualTo(String value) {
            addCriterion("contract_warning <>", value, "contractWarning");
            return (Criteria) this;
        }

        public Criteria andContractWarningGreaterThan(String value) {
            addCriterion("contract_warning >", value, "contractWarning");
            return (Criteria) this;
        }

        public Criteria andContractWarningGreaterThanOrEqualTo(String value) {
            addCriterion("contract_warning >=", value, "contractWarning");
            return (Criteria) this;
        }

        public Criteria andContractWarningLessThan(String value) {
            addCriterion("contract_warning <", value, "contractWarning");
            return (Criteria) this;
        }

        public Criteria andContractWarningLessThanOrEqualTo(String value) {
            addCriterion("contract_warning <=", value, "contractWarning");
            return (Criteria) this;
        }

        public Criteria andContractWarningLike(String value) {
            addCriterion("contract_warning like", value, "contractWarning");
            return (Criteria) this;
        }

        public Criteria andContractWarningNotLike(String value) {
            addCriterion("contract_warning not like", value, "contractWarning");
            return (Criteria) this;
        }

        public Criteria andContractWarningIn(List<String> values) {
            addCriterion("contract_warning in", values, "contractWarning");
            return (Criteria) this;
        }

        public Criteria andContractWarningNotIn(List<String> values) {
            addCriterion("contract_warning not in", values, "contractWarning");
            return (Criteria) this;
        }

        public Criteria andContractWarningBetween(String value1, String value2) {
            addCriterion("contract_warning between", value1, value2, "contractWarning");
            return (Criteria) this;
        }

        public Criteria andContractWarningNotBetween(String value1, String value2) {
            addCriterion("contract_warning not between", value1, value2, "contractWarning");
            return (Criteria) this;
        }

        public Criteria andJobTypeIdIsNull() {
            addCriterion("job_type_id is null");
            return (Criteria) this;
        }

        public Criteria andJobTypeIdIsNotNull() {
            addCriterion("job_type_id is not null");
            return (Criteria) this;
        }

        public Criteria andJobTypeIdEqualTo(Integer value) {
            addCriterion("job_type_id =", value, "jobTypeId");
            return (Criteria) this;
        }

        public Criteria andJobTypeIdNotEqualTo(Integer value) {
            addCriterion("job_type_id <>", value, "jobTypeId");
            return (Criteria) this;
        }

        public Criteria andJobTypeIdGreaterThan(Integer value) {
            addCriterion("job_type_id >", value, "jobTypeId");
            return (Criteria) this;
        }

        public Criteria andJobTypeIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("job_type_id >=", value, "jobTypeId");
            return (Criteria) this;
        }

        public Criteria andJobTypeIdLessThan(Integer value) {
            addCriterion("job_type_id <", value, "jobTypeId");
            return (Criteria) this;
        }

        public Criteria andJobTypeIdLessThanOrEqualTo(Integer value) {
            addCriterion("job_type_id <=", value, "jobTypeId");
            return (Criteria) this;
        }

        public Criteria andJobTypeIdIn(List<Integer> values) {
            addCriterion("job_type_id in", values, "jobTypeId");
            return (Criteria) this;
        }

        public Criteria andJobTypeIdNotIn(List<Integer> values) {
            addCriterion("job_type_id not in", values, "jobTypeId");
            return (Criteria) this;
        }

        public Criteria andJobTypeIdBetween(Integer value1, Integer value2) {
            addCriterion("job_type_id between", value1, value2, "jobTypeId");
            return (Criteria) this;
        }

        public Criteria andJobTypeIdNotBetween(Integer value1, Integer value2) {
            addCriterion("job_type_id not between", value1, value2, "jobTypeId");
            return (Criteria) this;
        }

        public Criteria andProfTypeIdIsNull() {
            addCriterion("prof_type_id is null");
            return (Criteria) this;
        }

        public Criteria andProfTypeIdIsNotNull() {
            addCriterion("prof_type_id is not null");
            return (Criteria) this;
        }

        public Criteria andProfTypeIdEqualTo(Integer value) {
            addCriterion("prof_type_id =", value, "profTypeId");
            return (Criteria) this;
        }

        public Criteria andProfTypeIdNotEqualTo(Integer value) {
            addCriterion("prof_type_id <>", value, "profTypeId");
            return (Criteria) this;
        }

        public Criteria andProfTypeIdGreaterThan(Integer value) {
            addCriterion("prof_type_id >", value, "profTypeId");
            return (Criteria) this;
        }

        public Criteria andProfTypeIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("prof_type_id >=", value, "profTypeId");
            return (Criteria) this;
        }

        public Criteria andProfTypeIdLessThan(Integer value) {
            addCriterion("prof_type_id <", value, "profTypeId");
            return (Criteria) this;
        }

        public Criteria andProfTypeIdLessThanOrEqualTo(Integer value) {
            addCriterion("prof_type_id <=", value, "profTypeId");
            return (Criteria) this;
        }

        public Criteria andProfTypeIdIn(List<Integer> values) {
            addCriterion("prof_type_id in", values, "profTypeId");
            return (Criteria) this;
        }

        public Criteria andProfTypeIdNotIn(List<Integer> values) {
            addCriterion("prof_type_id not in", values, "profTypeId");
            return (Criteria) this;
        }

        public Criteria andProfTypeIdBetween(Integer value1, Integer value2) {
            addCriterion("prof_type_id between", value1, value2, "profTypeId");
            return (Criteria) this;
        }

        public Criteria andProfTypeIdNotBetween(Integer value1, Integer value2) {
            addCriterion("prof_type_id not between", value1, value2, "profTypeId");
            return (Criteria) this;
        }

        public Criteria andEduResumeIdIsNull() {
            addCriterion("edu_resume_id is null");
            return (Criteria) this;
        }

        public Criteria andEduResumeIdIsNotNull() {
            addCriterion("edu_resume_id is not null");
            return (Criteria) this;
        }

        public Criteria andEduResumeIdEqualTo(Integer value) {
            addCriterion("edu_resume_id =", value, "eduResumeId");
            return (Criteria) this;
        }

        public Criteria andEduResumeIdNotEqualTo(Integer value) {
            addCriterion("edu_resume_id <>", value, "eduResumeId");
            return (Criteria) this;
        }

        public Criteria andEduResumeIdGreaterThan(Integer value) {
            addCriterion("edu_resume_id >", value, "eduResumeId");
            return (Criteria) this;
        }

        public Criteria andEduResumeIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("edu_resume_id >=", value, "eduResumeId");
            return (Criteria) this;
        }

        public Criteria andEduResumeIdLessThan(Integer value) {
            addCriterion("edu_resume_id <", value, "eduResumeId");
            return (Criteria) this;
        }

        public Criteria andEduResumeIdLessThanOrEqualTo(Integer value) {
            addCriterion("edu_resume_id <=", value, "eduResumeId");
            return (Criteria) this;
        }

        public Criteria andEduResumeIdIn(List<Integer> values) {
            addCriterion("edu_resume_id in", values, "eduResumeId");
            return (Criteria) this;
        }

        public Criteria andEduResumeIdNotIn(List<Integer> values) {
            addCriterion("edu_resume_id not in", values, "eduResumeId");
            return (Criteria) this;
        }

        public Criteria andEduResumeIdBetween(Integer value1, Integer value2) {
            addCriterion("edu_resume_id between", value1, value2, "eduResumeId");
            return (Criteria) this;
        }

        public Criteria andEduResumeIdNotBetween(Integer value1, Integer value2) {
            addCriterion("edu_resume_id not between", value1, value2, "eduResumeId");
            return (Criteria) this;
        }

        public Criteria andJobResumeIdIsNull() {
            addCriterion("job_resume_id is null");
            return (Criteria) this;
        }

        public Criteria andJobResumeIdIsNotNull() {
            addCriterion("job_resume_id is not null");
            return (Criteria) this;
        }

        public Criteria andJobResumeIdEqualTo(Integer value) {
            addCriterion("job_resume_id =", value, "jobResumeId");
            return (Criteria) this;
        }

        public Criteria andJobResumeIdNotEqualTo(Integer value) {
            addCriterion("job_resume_id <>", value, "jobResumeId");
            return (Criteria) this;
        }

        public Criteria andJobResumeIdGreaterThan(Integer value) {
            addCriterion("job_resume_id >", value, "jobResumeId");
            return (Criteria) this;
        }

        public Criteria andJobResumeIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("job_resume_id >=", value, "jobResumeId");
            return (Criteria) this;
        }

        public Criteria andJobResumeIdLessThan(Integer value) {
            addCriterion("job_resume_id <", value, "jobResumeId");
            return (Criteria) this;
        }

        public Criteria andJobResumeIdLessThanOrEqualTo(Integer value) {
            addCriterion("job_resume_id <=", value, "jobResumeId");
            return (Criteria) this;
        }

        public Criteria andJobResumeIdIn(List<Integer> values) {
            addCriterion("job_resume_id in", values, "jobResumeId");
            return (Criteria) this;
        }

        public Criteria andJobResumeIdNotIn(List<Integer> values) {
            addCriterion("job_resume_id not in", values, "jobResumeId");
            return (Criteria) this;
        }

        public Criteria andJobResumeIdBetween(Integer value1, Integer value2) {
            addCriterion("job_resume_id between", value1, value2, "jobResumeId");
            return (Criteria) this;
        }

        public Criteria andJobResumeIdNotBetween(Integer value1, Integer value2) {
            addCriterion("job_resume_id not between", value1, value2, "jobResumeId");
            return (Criteria) this;
        }

        public Criteria andColorIsNull() {
            addCriterion("color is null");
            return (Criteria) this;
        }

        public Criteria andColorIsNotNull() {
            addCriterion("color is not null");
            return (Criteria) this;
        }

        public Criteria andColorEqualTo(Integer value) {
            addCriterion("color =", value, "color");
            return (Criteria) this;
        }

        public Criteria andColorNotEqualTo(Integer value) {
            addCriterion("color <>", value, "color");
            return (Criteria) this;
        }

        public Criteria andColorGreaterThan(Integer value) {
            addCriterion("color >", value, "color");
            return (Criteria) this;
        }

        public Criteria andColorGreaterThanOrEqualTo(Integer value) {
            addCriterion("color >=", value, "color");
            return (Criteria) this;
        }

        public Criteria andColorLessThan(Integer value) {
            addCriterion("color <", value, "color");
            return (Criteria) this;
        }

        public Criteria andColorLessThanOrEqualTo(Integer value) {
            addCriterion("color <=", value, "color");
            return (Criteria) this;
        }

        public Criteria andColorIn(List<Integer> values) {
            addCriterion("color in", values, "color");
            return (Criteria) this;
        }

        public Criteria andColorNotIn(List<Integer> values) {
            addCriterion("color not in", values, "color");
            return (Criteria) this;
        }

        public Criteria andColorBetween(Integer value1, Integer value2) {
            addCriterion("color between", value1, value2, "color");
            return (Criteria) this;
        }

        public Criteria andColorNotBetween(Integer value1, Integer value2) {
            addCriterion("color not between", value1, value2, "color");
            return (Criteria) this;
        }

        public Criteria andBadgeIdIsNull() {
            addCriterion("badge_id is null");
            return (Criteria) this;
        }

        public Criteria andBadgeIdIsNotNull() {
            addCriterion("badge_id is not null");
            return (Criteria) this;
        }

        public Criteria andBadgeIdEqualTo(Integer value) {
            addCriterion("badge_id =", value, "badgeId");
            return (Criteria) this;
        }

        public Criteria andBadgeIdNotEqualTo(Integer value) {
            addCriterion("badge_id <>", value, "badgeId");
            return (Criteria) this;
        }

        public Criteria andBadgeIdGreaterThan(Integer value) {
            addCriterion("badge_id >", value, "badgeId");
            return (Criteria) this;
        }

        public Criteria andBadgeIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("badge_id >=", value, "badgeId");
            return (Criteria) this;
        }

        public Criteria andBadgeIdLessThan(Integer value) {
            addCriterion("badge_id <", value, "badgeId");
            return (Criteria) this;
        }

        public Criteria andBadgeIdLessThanOrEqualTo(Integer value) {
            addCriterion("badge_id <=", value, "badgeId");
            return (Criteria) this;
        }

        public Criteria andBadgeIdIn(List<Integer> values) {
            addCriterion("badge_id in", values, "badgeId");
            return (Criteria) this;
        }

        public Criteria andBadgeIdNotIn(List<Integer> values) {
            addCriterion("badge_id not in", values, "badgeId");
            return (Criteria) this;
        }

        public Criteria andBadgeIdBetween(Integer value1, Integer value2) {
            addCriterion("badge_id between", value1, value2, "badgeId");
            return (Criteria) this;
        }

        public Criteria andBadgeIdNotBetween(Integer value1, Integer value2) {
            addCriterion("badge_id not between", value1, value2, "badgeId");
            return (Criteria) this;
        }

        public Criteria andCoachNameIsNull() {
            addCriterion("coach_name is null");
            return (Criteria) this;
        }

        public Criteria andCoachNameIsNotNull() {
            addCriterion("coach_name is not null");
            return (Criteria) this;
        }

        public Criteria andCoachNameEqualTo(String value) {
            addCriterion("coach_name =", value, "coachName");
            return (Criteria) this;
        }

        public Criteria andCoachNameNotEqualTo(String value) {
            addCriterion("coach_name <>", value, "coachName");
            return (Criteria) this;
        }

        public Criteria andCoachNameGreaterThan(String value) {
            addCriterion("coach_name >", value, "coachName");
            return (Criteria) this;
        }

        public Criteria andCoachNameGreaterThanOrEqualTo(String value) {
            addCriterion("coach_name >=", value, "coachName");
            return (Criteria) this;
        }

        public Criteria andCoachNameLessThan(String value) {
            addCriterion("coach_name <", value, "coachName");
            return (Criteria) this;
        }

        public Criteria andCoachNameLessThanOrEqualTo(String value) {
            addCriterion("coach_name <=", value, "coachName");
            return (Criteria) this;
        }

        public Criteria andCoachNameLike(String value) {
            addCriterion("coach_name like", value, "coachName");
            return (Criteria) this;
        }

        public Criteria andCoachNameNotLike(String value) {
            addCriterion("coach_name not like", value, "coachName");
            return (Criteria) this;
        }

        public Criteria andCoachNameIn(List<String> values) {
            addCriterion("coach_name in", values, "coachName");
            return (Criteria) this;
        }

        public Criteria andCoachNameNotIn(List<String> values) {
            addCriterion("coach_name not in", values, "coachName");
            return (Criteria) this;
        }

        public Criteria andCoachNameBetween(String value1, String value2) {
            addCriterion("coach_name between", value1, value2, "coachName");
            return (Criteria) this;
        }

        public Criteria andCoachNameNotBetween(String value1, String value2) {
            addCriterion("coach_name not between", value1, value2, "coachName");
            return (Criteria) this;
        }

        public Criteria andIsActiveIsNull() {
            addCriterion("is_active is null");
            return (Criteria) this;
        }

        public Criteria andIsActiveIsNotNull() {
            addCriterion("is_active is not null");
            return (Criteria) this;
        }

        public Criteria andIsActiveEqualTo(String value) {
            addCriterion("is_active =", value, "isActive");
            return (Criteria) this;
        }

        public Criteria andIsActiveNotEqualTo(String value) {
            addCriterion("is_active <>", value, "isActive");
            return (Criteria) this;
        }

        public Criteria andIsActiveGreaterThan(String value) {
            addCriterion("is_active >", value, "isActive");
            return (Criteria) this;
        }

        public Criteria andIsActiveGreaterThanOrEqualTo(String value) {
            addCriterion("is_active >=", value, "isActive");
            return (Criteria) this;
        }

        public Criteria andIsActiveLessThan(String value) {
            addCriterion("is_active <", value, "isActive");
            return (Criteria) this;
        }

        public Criteria andIsActiveLessThanOrEqualTo(String value) {
            addCriterion("is_active <=", value, "isActive");
            return (Criteria) this;
        }

        public Criteria andIsActiveLike(String value) {
            addCriterion("is_active like", value, "isActive");
            return (Criteria) this;
        }

        public Criteria andIsActiveNotLike(String value) {
            addCriterion("is_active not like", value, "isActive");
            return (Criteria) this;
        }

        public Criteria andIsActiveIn(List<String> values) {
            addCriterion("is_active in", values, "isActive");
            return (Criteria) this;
        }

        public Criteria andIsActiveNotIn(List<String> values) {
            addCriterion("is_active not in", values, "isActive");
            return (Criteria) this;
        }

        public Criteria andIsActiveBetween(String value1, String value2) {
            addCriterion("is_active between", value1, value2, "isActive");
            return (Criteria) this;
        }

        public Criteria andIsActiveNotBetween(String value1, String value2) {
            addCriterion("is_active not between", value1, value2, "isActive");
            return (Criteria) this;
        }

        public Criteria andDepartureReasonIsNull() {
            addCriterion("departure_reason is null");
            return (Criteria) this;
        }

        public Criteria andDepartureReasonIsNotNull() {
            addCriterion("departure_reason is not null");
            return (Criteria) this;
        }

        public Criteria andDepartureReasonEqualTo(String value) {
            addCriterion("departure_reason =", value, "departureReason");
            return (Criteria) this;
        }

        public Criteria andDepartureReasonNotEqualTo(String value) {
            addCriterion("departure_reason <>", value, "departureReason");
            return (Criteria) this;
        }

        public Criteria andDepartureReasonGreaterThan(String value) {
            addCriterion("departure_reason >", value, "departureReason");
            return (Criteria) this;
        }

        public Criteria andDepartureReasonGreaterThanOrEqualTo(String value) {
            addCriterion("departure_reason >=", value, "departureReason");
            return (Criteria) this;
        }

        public Criteria andDepartureReasonLessThan(String value) {
            addCriterion("departure_reason <", value, "departureReason");
            return (Criteria) this;
        }

        public Criteria andDepartureReasonLessThanOrEqualTo(String value) {
            addCriterion("departure_reason <=", value, "departureReason");
            return (Criteria) this;
        }

        public Criteria andDepartureReasonLike(String value) {
            addCriterion("departure_reason like", value, "departureReason");
            return (Criteria) this;
        }

        public Criteria andDepartureReasonNotLike(String value) {
            addCriterion("departure_reason not like", value, "departureReason");
            return (Criteria) this;
        }

        public Criteria andDepartureReasonIn(List<String> values) {
            addCriterion("departure_reason in", values, "departureReason");
            return (Criteria) this;
        }

        public Criteria andDepartureReasonNotIn(List<String> values) {
            addCriterion("departure_reason not in", values, "departureReason");
            return (Criteria) this;
        }

        public Criteria andDepartureReasonBetween(String value1, String value2) {
            addCriterion("departure_reason between", value1, value2, "departureReason");
            return (Criteria) this;
        }

        public Criteria andDepartureReasonNotBetween(String value1, String value2) {
            addCriterion("departure_reason not between", value1, value2, "departureReason");
            return (Criteria) this;
        }

        public Criteria andDepartureDescriptionIsNull() {
            addCriterion("departure_description is null");
            return (Criteria) this;
        }

        public Criteria andDepartureDescriptionIsNotNull() {
            addCriterion("departure_description is not null");
            return (Criteria) this;
        }

        public Criteria andDepartureDescriptionEqualTo(String value) {
            addCriterion("departure_description =", value, "departureDescription");
            return (Criteria) this;
        }

        public Criteria andDepartureDescriptionNotEqualTo(String value) {
            addCriterion("departure_description <>", value, "departureDescription");
            return (Criteria) this;
        }

        public Criteria andDepartureDescriptionGreaterThan(String value) {
            addCriterion("departure_description >", value, "departureDescription");
            return (Criteria) this;
        }

        public Criteria andDepartureDescriptionGreaterThanOrEqualTo(String value) {
            addCriterion("departure_description >=", value, "departureDescription");
            return (Criteria) this;
        }

        public Criteria andDepartureDescriptionLessThan(String value) {
            addCriterion("departure_description <", value, "departureDescription");
            return (Criteria) this;
        }

        public Criteria andDepartureDescriptionLessThanOrEqualTo(String value) {
            addCriterion("departure_description <=", value, "departureDescription");
            return (Criteria) this;
        }

        public Criteria andDepartureDescriptionLike(String value) {
            addCriterion("departure_description like", value, "departureDescription");
            return (Criteria) this;
        }

        public Criteria andDepartureDescriptionNotLike(String value) {
            addCriterion("departure_description not like", value, "departureDescription");
            return (Criteria) this;
        }

        public Criteria andDepartureDescriptionIn(List<String> values) {
            addCriterion("departure_description in", values, "departureDescription");
            return (Criteria) this;
        }

        public Criteria andDepartureDescriptionNotIn(List<String> values) {
            addCriterion("departure_description not in", values, "departureDescription");
            return (Criteria) this;
        }

        public Criteria andDepartureDescriptionBetween(String value1, String value2) {
            addCriterion("departure_description between", value1, value2, "departureDescription");
            return (Criteria) this;
        }

        public Criteria andDepartureDescriptionNotBetween(String value1, String value2) {
            addCriterion("departure_description not between", value1, value2, "departureDescription");
            return (Criteria) this;
        }

        public Criteria andCreateByIsNull() {
            addCriterion("create_by is null");
            return (Criteria) this;
        }

        public Criteria andCreateByIsNotNull() {
            addCriterion("create_by is not null");
            return (Criteria) this;
        }

        public Criteria andCreateByEqualTo(String value) {
            addCriterion("create_by =", value, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByNotEqualTo(String value) {
            addCriterion("create_by <>", value, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByGreaterThan(String value) {
            addCriterion("create_by >", value, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByGreaterThanOrEqualTo(String value) {
            addCriterion("create_by >=", value, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByLessThan(String value) {
            addCriterion("create_by <", value, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByLessThanOrEqualTo(String value) {
            addCriterion("create_by <=", value, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByLike(String value) {
            addCriterion("create_by like", value, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByNotLike(String value) {
            addCriterion("create_by not like", value, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByIn(List<String> values) {
            addCriterion("create_by in", values, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByNotIn(List<String> values) {
            addCriterion("create_by not in", values, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByBetween(String value1, String value2) {
            addCriterion("create_by between", value1, value2, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByNotBetween(String value1, String value2) {
            addCriterion("create_by not between", value1, value2, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("create_time is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("create_time is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(Date value) {
            addCriterion("create_time =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualTo(Date value) {
            addCriterion("create_time <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThan(Date value) {
            addCriterion("create_time >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("create_time >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThan(Date value) {
            addCriterion("create_time <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
            addCriterion("create_time <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(List<Date> values) {
            addCriterion("create_time in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(List<Date> values) {
            addCriterion("create_time not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeBetween(Date value1, Date value2) {
            addCriterion("create_time between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
            addCriterion("create_time not between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andUpdateByIsNull() {
            addCriterion("update_by is null");
            return (Criteria) this;
        }

        public Criteria andUpdateByIsNotNull() {
            addCriterion("update_by is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateByEqualTo(String value) {
            addCriterion("update_by =", value, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByNotEqualTo(String value) {
            addCriterion("update_by <>", value, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByGreaterThan(String value) {
            addCriterion("update_by >", value, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByGreaterThanOrEqualTo(String value) {
            addCriterion("update_by >=", value, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByLessThan(String value) {
            addCriterion("update_by <", value, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByLessThanOrEqualTo(String value) {
            addCriterion("update_by <=", value, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByLike(String value) {
            addCriterion("update_by like", value, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByNotLike(String value) {
            addCriterion("update_by not like", value, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByIn(List<String> values) {
            addCriterion("update_by in", values, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByNotIn(List<String> values) {
            addCriterion("update_by not in", values, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByBetween(String value1, String value2) {
            addCriterion("update_by between", value1, value2, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByNotBetween(String value1, String value2) {
            addCriterion("update_by not between", value1, value2, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNull() {
            addCriterion("update_time is null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNotNull() {
            addCriterion("update_time is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeEqualTo(Date value) {
            addCriterion("update_time =", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotEqualTo(Date value) {
            addCriterion("update_time <>", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThan(Date value) {
            addCriterion("update_time >", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("update_time >=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThan(Date value) {
            addCriterion("update_time <", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThanOrEqualTo(Date value) {
            addCriterion("update_time <=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIn(List<Date> values) {
            addCriterion("update_time in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotIn(List<Date> values) {
            addCriterion("update_time not in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeBetween(Date value1, Date value2) {
            addCriterion("update_time between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
            addCriterion("update_time not between", value1, value2, "updateTime");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}